import os
from dotenv import load_dotenv, find_dotenv # 导入 find_dotenv 帮助定位
from doctran import Doctran

# 安装doctran的时候会把pydantic换成1.10.22版本的，会导致导入openai的包报错，因为openai的包需要2.0以上版本的pydantic
# 如果是2.0版本的pydantic会导致Doctran过不了检查
# 要运行这个文件，可以把doctran给重装一下，会自动下载1.10.22版本的pydantic

# 加载 .env 文件中的环境变量 (增强调试)
load_dotenv(dotenv_path=find_dotenv(usecwd=True), verbose=True, override=True)

# 从环境变量加载 API 密钥和基础 URL
api_key = os.getenv("OPENAI_API_KEY")
base_url = os.getenv("OPENAI_BASE_URL")
model = os.getenv("DEFAULT_MODEL")

#加载文档
with open("C:/Users/Aceks/Downloads/武汉理工大学三亚科教创新园开展文明寝室评选的通知.txt", encoding='utf-8') as f:
    content = f.read()

doctrans = Doctran(
    openai_api_key=api_key,
    openai_model="gpt-4",
    openai_token_limit=8000
)

documents = doctrans.parse(content=content)
#总结文档
summary = documents.summarize(token_limit=200).execute()
print(summary.transformed_content)

#翻译文档
# translation = documents.translate(language="English").execute()
# print(translation.transformed_content)

#精炼文档，删除除了某个主题或关键词之外的内容，仅保留与主题相关的内容
# refined = documents.refine(topics=["评选等级"]).execute()
# print(refined.transformed_content)